package com.yuantong.xyerp.core.api.form;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import io.swagger.annotations.Tag;
import lombok.Data;
import lombok.Setter;

import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

/**
 * Created by Jianguo.Yin on 2021-08-07.
 */
@Data
@ApiModel(value = "查询条件只传需要的")
public class QueryForm implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty("条件选择中的供应商分类(S-供应商；P-采购商；A-代理商)")
    private String merchantType;
    @ApiModelProperty("条件选择中的业务类型分类")
    private String businessType;
    @ApiModelProperty("条件选择中的销售单/采购单审核状态")
    private String stateType;
    @ApiModelProperty("条件选择中的起始时间")
    @JsonFormat(locale="zh", timezone="GMT+8", pattern="yyyy-MM-dd HH:mm:ss")
    private Date startTime;
    @ApiModelProperty("条件选择中的结束时间")
    @JsonFormat(locale="zh", timezone="GMT+8", pattern="yyyy-MM-dd HH:mm:ss")
    private Date endTime;
    @ApiModelProperty("条件选择中的用户输入的查询参数")
    private String fuzzy;
    @ApiModelProperty("条件选择中的最低价BigDecimal类型")
    private BigDecimal lowerAmount;
    @ApiModelProperty("条件选择中的最高价BigDecimal类型")
    private BigDecimal higherAmount;
    @ApiModelProperty("用户勾选的数据id,如果没有勾选传空数组[]")
    private List<String> ids;

    @ApiModelProperty("库存流水对应的出入库单ID")
    private String warehouseReceiptId;

    @ApiModelProperty("库存单据类型 1-采购入库，2-生产产品入库，3-调拨入库，4、退货入库、5-销售出库，6-调拨出库，7-生产原料出库")
    private String warehouseReceiptType;
}
